package com.shop.cloud.model.response;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.shop.cloud.model.response.RestfulResponse;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * @author Alex
 */

@ToString(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class GetUserListResponse {
	
    @JsonProperty("id")
    @ApiModelProperty(value = "id", example = "", required = true)
    private Long id;
    
    @JsonProperty("nickname")
    @ApiModelProperty(value = "用户昵称", example = "", required = true)
    private String nickname;

    @JsonProperty("username")
    @ApiModelProperty(value = "用户名称", example = "", required = true)
    private String username;
    
    @JsonProperty("phone")
    @ApiModelProperty(value = "手机号", example = "", required = true)
    private String phone;

    @JsonProperty("cardno")
    @ApiModelProperty(value = "会员卡号", example = "", required = true)
    private String cardno;
    
    @JsonProperty("channel")
    @ApiModelProperty(value = "渠道", example = "", required = true)
    private String channel;
    
    @JsonProperty("level")
    @ApiModelProperty(value = "级别", example = "", required = true)
    private String level;
    
    @JsonProperty("store")
    @ApiModelProperty(value = "所属门店", example = "", required = true)
    private String store;
    
    @JsonProperty("balance")
    @ApiModelProperty(value = "余额", example = "", required = true)
    private float balance;
    
    @JsonProperty("points")
    @ApiModelProperty(value = "积分", example = "", required = true)
    private int points;
    
    @JsonProperty("rebateBalance")
    @ApiModelProperty(value = "返利总额", example = "", required = true)
    private float rebateBalance;
    
    @JsonProperty("canWithdrawBalance")
    @ApiModelProperty(value = "可提现金额", example = "", required = true)
    private float canWithdrawBalance;
    
    @JsonProperty("create_time")
    @ApiModelProperty(value = "创建时间", example = "", required = true)
    private Date create_time;
    
    @JsonProperty("last_login_time")
    @ApiModelProperty(value = "最后登录时间", example = "", required = true)
    private Date last_login_time;
    
    @JsonProperty("user_level")
    @ApiModelProperty(value = "会员等级", example = "", required = true)
    private int userLevel;

	/**
	 * @return the userLevel
	 */
	public int getUserLevel() {
		return userLevel;
	}

	/**
	 * @param userLevel the userLevel to set
	 */
	public void setUserLevel(int userLevel) {
		this.userLevel = userLevel;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public Date getCreate_time() {
		return create_time;
	}

	public void setCreate_time(Date create_time) {
		this.create_time = create_time;
	}

	public Date getLast_login_time() {
		return last_login_time;
	}

	public void setLast_login_time(Date last_login_time) {
		this.last_login_time = last_login_time;
	}

	public String getNickname() {
		return nickname;
	}

	public void setNickname(String nickname) {
		this.nickname = nickname;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getChannel() {
		return channel;
	}

	public void setChannel(String channel) {
		this.channel = channel;
	}

	public String getLevel() {
		return level;
	}

	public void setLevel(String level) {
		this.level = level;
	}

	public String getStore() {
		return store;
	}

	public void setStore(String store) {
		this.store = store;
	}

	public String getCardno() {
		return cardno;
	}

	public void setCardno(String cardno) {
		this.cardno = cardno;
	}

	public float getBalance() {
		return balance;
	}

	public void setBalance(float balance) {
		this.balance = balance;
	}

	public int getPoints() {
		return points;
	}

	public void setPoints(int points) {
		this.points = points;
	}

	public float getRebateBalance() {
		return rebateBalance;
	}

	public void setRebateBalance(float rebateBalance) {
		this.rebateBalance = rebateBalance;
	}

	public float getCanWithdrawBalance() {
		return canWithdrawBalance;
	}

	public void setCanWithdrawBalance(float canWithdrawBalance) {
		this.canWithdrawBalance = canWithdrawBalance;
	}

}
